#pragma once
template<class T>
class CSingleton
{
public:
	static T& GetInstance(void)
	{
		static T obj;
		return obj;
	}

protected:
	virtual ~CSingleton() { };
	CSingleton() {};
};